// api/person.js
import {request} from "../utils/request"

/**
 * 使用学号和密码登录（返回Token）
 * @param {string} studentNo - 学号
 * @param {string} password - 密码
 * @returns {Promise}
 */
export function loginWithToken(studentNo, password) {
  return request({
    url: '/app-api/mp/open/login/loginWithToken',
    method: 'POST',
    data: {
      studentNo: studentNo,
      password: password
    }
  })
}

/**
 * 刷新Token
 * @param {string} refreshToken - 刷新token
 * @returns {Promise}
 */
export function refreshToken(refreshToken) {
  return request({
    url: '/app-api/mp/open/login/refreshToken',
    method: 'POST',
    data: {
      refreshToken: refreshToken
    }
  })
}

/**
 * 修改密码
 * @param {Object} data - 密码修改数据
 * @param {string} data.studentNo - 学号
 * @param {string} data.oldPassword - 旧密码
 * @param {string} data.newPassword - 新密码
 * @returns {Promise}
 */
export function changePassword(data) {
  return request({
    url: '/app-api/mp/open/login/changePassword',
    method: 'POST',
    data: data
  })
}

// 其他接口保持不变...
export function getMyBooking(studentId) {
  return request({
    url: `/app-api/mp/open/consult-record/my-appointments?studentId=${studentId}`,
    method: 'GET'
  })
}

export function getMyDetail(id, studentId) {
  return request({
    url: `/app-api/mp/open/consult-record/my-appointment/${id}?studentId=${studentId}`,
    method: 'GET'
  })
}

export function fillEvaluation(data) {
  return request({
    url: '/app-api/mp/open/consult-record/fill-evaluation',
    method: 'POST',
    data: data
  })
}

/**
 * 修改学生信息
 * @param {Object} studentData - 学生信息数据
 * @param {number} studentData.id - 学生ID
 * @param {string} studentData.studentNo - 学号
 * @param {string} studentData.studentName - 学生姓名
 * @param {string} studentData.gender - 性别
 * @param {number} studentData.age - 年龄
 * @param {number} studentData.classId - 班级ID
 * @param {number} studentData.majorDictId - 专业字典ID
 * @param {number} studentData.gradeDictId - 年级字典ID
 * @param {string} studentData.education - 学历
 * @param {string} studentData.phone - 手机号
 * @param {string} studentData.enrollTime - 入学时间
 * @param {number} studentData.status - 状态
 * @param {string} studentData.medicalHistory - 病史
 * @param {string} studentData.psychologicalHistory - 心理病史
 * @param {string} studentData.familySituation - 家庭情况
 * @param {string} studentData.psychologicalTestResult - 心理测试结果
 * @returns {Promise}
 */
export function updateStudent(studentData) {
  return request({
    url: '/app-api/mp/open/student/update',
    method: 'PUT',
    data: studentData
  })
}


/**
 * 获取测评记录列表
 * @param {string} studentId - 学生ID
 * @returns {Promise}
 */
export function getTestRecordList(studentId) {
  return request({
    url: '/app-api/mp/open/testrecord/list',
    method: 'GET',
    data: {
      studentId: studentId
    }
  })
}
